package online.heycm.platform.oss;

import com.amazonaws.Protocol;
import lombok.Data;
import org.springframework.boot.context.properties.ConfigurationProperties;

/**
 * OSS配置
 */
@Data
@ConfigurationProperties(prefix = "oss")
public class OssProperties {

    /*
     * OSS 厂商
     */
    private OssType type;

    /*
     * OSS 端点
     */
    private String endpoint;

    /*
     * 存储桶区域
     */
    private String region;

    /*
     * 存储桶名称
     */
    private String bucketName;

    /*
     * 访问密钥
     */
    private String accessKey;

    /*
     * 访问密钥
     */
    private String secretKey;

    /*
     * 路径风格
     * true: http://bucketName.endpoint/objectName  阿里云需要这种格式 virtual-hosted-style
     * false: http://endpoint/bucketName/objectName
     */
    private boolean pathStyleAccess;

    /*
     * 协议：http/https
     */
    private Protocol protocol;

    /*
     * 建立连接超时时间
     */
    private int connectionTimeout = 3000;

    /*
     * Socket层传输数据超时时间
     */
    private int socketTimeout = 10000;

    /*
     * 允许打开的最大HTTP连接数
     */
    private int maxConnections = 20;

    /*
     * 请求失败后最大的重试次数
     */
    private int maxErrorRetry = 3;

}
